1. Field of the Invention
The present invention relates to signal-reproduction methods and apparatuses, and in particular, to signal-reproduction method and apparatus which receive a code string obtained by coding an input signal such as digital data, and use a simplified structure to reproduce the code string.
2. Description of the Related Art
Various techniques and apparatuses for the highly efficient coding of audio signals have been proposed. For example, there is a known transformation-coding method which has the steps of: separating a time-axial signal into frames in units of a predetermined time; performing the transformation (spectral transformation) of the time-axial signal in each frame to a frequency-axial signal; dividing the frequency band of the obtained spectral signal into a plurality of frequency bands; and coding the spectral signal in each band.
Types of the mentioned spectral transformation include, for example, a spectral transformation which separates an input audio signal into frames in units of a predetermined time, and transforms a time-axial value to a frequency-axial value by performing in each frame a discrete Fourier transform (DFT), a discrete cosine transform (DCT), or a modified discrete cosine transform (MDCT). Concerning the MDCT, details are described in a document titled "Subband/Transform Coding Using Filter Bank Designs based on Time Domain Aliasing Cancellation" (J. P. Princen, A. B. Bradley, Univ. of Surrey Royal Melbourne Inst. of Tech. ICASSP 1987).
In the above-described spectral transformation, by quantizing a signal divided in each band, a band in which a quantization noise occurs can be controlled, and a so-called masking effect is used to enable highly efficient coding for the sense of hearing. In addition, before performing quantization, by performing normalization in each band with the absolute values of signal components in the band, more highly efficient coding can be performed.
A band width in which human auditory characteristics are considered is often used as the divided width of a frequency band. That is, in general, in a band width called a "critical band" where a higher range has a wider band width, an audio signal is often divided into a plurality of bands (e.g., 25 bands). When data in each band at this time is coded, predetermined bit distribution is performed for each band, or bit allocation is adaptively performed for each band. By way of example, when coefficient data obtained by performing the MDCT is coded by performing the bit allocation, MDCT coefficient data in each band, obtained by performing MDCT for each frame, is coded using the number of adaptive allocation bits.
Techniques for the bit distribution include the following two known techniques.
For example, according to a document titled "Adaptive Transform Coding of Speech Signals" (R. Zelinski, P. Noll, IEEE Transactions of Acoustics, Speech, and Signal Processing, vol. ASSP-25, No. 4, Aug. 1997), bit allocation is performed based on the magnitude of a signal in each band. This technique flattens a quantization-noise spectrum to minimize the energy of a noise. However, the actual sense of hearing for the noise is not controlled to its optimum level since a masking effect is not utilized.
Also, a document titled "The critical band coder--digital encoding of the perceptual requirements of the auditory system" (M. A. Kransner MIT, ICASSP 1980) describes a technique in which auditory masking is used to obtain a signal-to-noise ratio necessary for each band, and fixed bit allocation is performed. According to this technique, bit allocation is fixed even when characteristics are measured with a sinewave input, which does not provide desired characteristic values.
In order to solve the above-described problems, there is proposed a highly efficient coding method in which all bits usable for bit allocation are divided into two: a pattern for predetermined fixed allocation to each band or each smaller-divided block formed by further dividing each band; and another pattern for bit allocation dependent on the magnitude of a signal in each block, and the division ratio is correlated to be dependent on a signal related to an input signal so that the ratio of the pattern for the fixed bit allocation is increased as the spectral distribution of the signal smooths.
According to the highly efficient coding method, when energy concentrates at particular spectral components such as a sinewave input, by allocating more bits to a block including the spectral components, total signal-to-noise characteristics can be remarkably improved. In general, the human sense of hearing is extremely sensitive to a signal with a sharp spectral distribution. Accordingly, using the highly efficient coding method to improve the signal-to-noise ratio is effective in improving not only a mere measured value but also a sound quality in the sense of hearing.
In addition to the above method, many other methods for bit allocation have been proposed. If a more precise model on the sense of hearing is made and the performance of a coding apparatus is improved, more highly efficient coding in the sense of hearing can be performed.
When the above-described DFT or DCT is used as a method for the spectral transformation of a waveform signal consisting of waveform elements (sample data) like a digital-audio signal in a time domain, a block is formed for, e.g., every M sample data, and spectral transformation (such as the DFT or the DCT) is performed with respect to each block. The spectral transformation of each block provides M independent real-number data (DFT-coefficient data or DCT-coefficient data). The M real-number data are coded by quantization to form coded data.
In order to reproduce a reproduction-waveform signal by decoding the coded data, first, the coded data are decoded so as to be reversely quantized. With respect to the obtained real-number data, reverse spectral transformation by a reverse DFT or reverse DCT is performed for each block corresponding to the block formed in coding, so that a waveform-element signal is obtained. And, the blocks including the waveform-element signal are connected.
In the formed reproduction-waveform signal a connection strain caused by the connection of the block remains, and is not desirable in the sense of hearing. Accordingly, in order to suppress the connection strain between the blocks, spectral transformation by the DFT or the DCT is performed in actual coding, while every M.sub.1 sample data are overlapped in the adjacent blocks.
When spectral transformation is performed, with every M.sub.1 sample data overlapped in the adjacent blocks, M real-number data are obtained on average for (M-M.sub.1) sample data. That is, the number of real-number data obtained by the spectral transformation increases more than the number of the original sample data used in the actual spectral transformation. Since the real-number data are subsequently coded by quantization, it is not preferable in coding efficiency that the number of the real-number data obtained by the spectral transformation increases more than the number of the original sample data.
To the contrary, when the above-described MDCT is used as a method for performing the spectral transformation of a waveform signal composed of sample data such as a digital-audio signal, in order to suppress a connection strain between blocks, spectral transformation is performed using 2M sample data formed by overlapping every M sample data in adjacent blocks so that M independent real-number data (MDCT-coefficient data) are obtained. Accordingly, the spectral transformation by the MDCT provides M real-number data with respect to M sample data on average, and enables coding whose efficiency is better than that of the spectral transformation using the DFT or the DCT.
When the spectral transformation by the MDCT is used to quantize the obtained real-number data, and the coded data formed by coding are decoded to generate a reproduction-waveform signal, the coded data are decoded so as to be reversely quantized, and reverse spectral transformation by the reverse MDCT is performed with respect to the obtained real-number data so that waveform elements in blocks are obtained. And, the waveform elements in the blocks are added so as to interfere mutually. Thereby, the waveform signal is reproduced. EQU x.sub.1,j (n)=W.sub.1 (n).times.(n+JM) EQU 0.ltoreq.n&lt;2M (1) ##EQU1## where M represents a transformation length; J represents a process for the J-th block; (n+JM) means the (n+JM)-th input data from the beginning.
Equations (1) and (2) show MDCT-equations. The MDCT needs two processes: a window process expressed by Equation (1) and an MDCT-process expressed by Equation (2). ##EQU2## EQU x.sub.3,j (n)=w2(n)x.sub.2,j (n) EQU 0.ltoreq.n&lt;2M (4) EQU y(n+JM)=x.sub.3,J-1 (n+M)+x.sub.3,J (n) EQU 0.ltoreq.n&lt;M (5)
Equations (3) to (5) show reverse MDCT-equations. The reverse MDCT needs three processes: a reverse MDCT-process expressed by Equation (3); a window process expressed by Equation (4); and an overlapping process expressed by Equation (5). EQU w.sub.1 (n)w.sub.2 (n)+w.sub.1 (n+M)w.sub.2 (n+M)=1 EQU 0.ltoreq.n&lt;M (6) EQU w.sub.1 (2M-n-1)w.sub.2 (n+M)=w.sub.1 (M-n-1)w.sub.2 (n) EQU 0.ltoreq.n&lt;M (7)
Equations (6) and (7) show binding conditions which must be satisfied by window functions used in the MDCT and the reverse MDCT in order to reproduce a waveform signal.
TABLE 1 ______________________________________ Transformation length 256 1024 Number of logical-sum operations 19968 4224 Amount of necessary RAM 8111536 ______________________________________ (word = 32 bits)
Table 1 shows the number of logical-sum operations in the reverse MDCT and the amount of necessary random access memory (RAM), obtained when the transformation length is 1024 or 256. The values of the amount of necessary RAM are required to perform floating-point arithmetics and to maintain a precision causing an error within 1/2 LSB in output 16-bit-PCM data. From Table 1 it is found that changing the transformation length from 1024 to 256 provides a decoding apparatus having a reverse-spectral-transformation circuit in which the number of logical-sum operations and the amount of necessary RAM decrease to 21% and 52%, respectively.
FIG. 5 shows a block diagram of a conventional signal-transmission apparatus 1 for transmitting an acoustic-waveform signal.
According to the signal-transmission apparatus 1 shown in FIG. 5, an acoustic-waveform signal inputted from an input terminal 11 is transformed by a spectral transformation circuit 12 from a time-axial signal to a frequency-axial spectral signal (signal-frequency components), and is subsequently normalized and quantized by a normalization/quantization circuit 14 using quantization-precision information found by a quantization-precision determination circuit 13.
The normalization/quantization circuit 14 outputs normalization-coefficient information and the coded spectral signal to a code-string generating circuit 15. The code-string generating circuit 15 generates a code string from the quantization-precision information, the normalization-coefficient information and the coded spectral signal, and outputs the code string from an output terminal 16. The outputted code string is recorded on a recording medium (not shown), or is transmitted to a transmission line.
FIG. 6 shows a specific block diagram of a case in which the MDCT is used as the transformation method in the spectral transformation circuit 12 shown in FIG. 5.
As shown in FIG. 6, an acoustic-waveform signal supplied from the input terminal 11 shown in FIG. 5 is inputted from a terminal 21. The acoustic-waveform signal is sent to a window-processing circuit 22, in which the window process expressed by Equation (1) is performed using a window coefficient supplied from an apparatus (not shown) via an input terminal 23. The window-processed signal outputted from the window-processing circuit 22 is transmitted to an MDCT circuit 24, in which the MDCT process expressed by Equation (2) is performed. A spectral signal outputted from the MDCT circuit 24 as the spectral signal from the spectral transformation circuit 12 is sent to the subsequent-stage circuit via a terminal 25.
The coding method performed in the signal-transmission apparatus shown in FIG. 5 will be described below, with reference to FIG. 7.
FIG. 7 shows the dB levels of the absolute values of the spectral signal (frequency components) obtained by the MDCT process. FIG. 7 also shows normalization-coefficient values in coded units.
64 spectral-signal components ES shown in FIG. 7 are obtained by using the spectral transformation circuit 12 to transform the acoustic-waveform signal for each predetermined-time frame. The 64 spectral-signal components ES are normalized and quantized by the normalization/quantization circuit 14, with the components separated into the groups (hereinafter referred to as "coded units") corresponding to five predetermined bands (Bands b1 to b5). For example, in Band b1 there are 8 spectral-signal components. Since the spectral-signal component of the lowest frequency is a maximum, it is selected as a normalization-coefficient value. Each spectral-signal component in the block is divided by the normalization-coefficient value, and its remainder is quantized.
The quantization-precision determination circuit 13 determines the quantization precision of each coded unit, based on e.g., an auditory model by calculating a minimum audible level or a masking level in the band corresponding to each coded unit. The band width of each coded unit is small in its low range and is large its high range, which can control the occurrence of quantization noise so as to adapt to auditory properties.
FIG. 8 shows an example of a code string generated by the signal-transmission apparatus shown in FIG. 5, and outputted from the terminal 16.
As shown in FIG. 8, the code string consists of five pieces U1 to U5 of coded-unit information. The five pieces of coded-unit information U1 to U5 consist of quantization-precision information, normalization-coefficient information, and pieces SC1 to SC8 of normalized and quantized signal-component information. The code string is recorded on a recording medium such as a magneto-optical disc. When quantization-precision information in one coded-unit information is zero as shown in coded-unit information U4, actual coding is not performed for the coded-unit information.
FIG. 9 shows a block diagram of a signal-reproduction apparatus that reproduces an acoustic-waveform signal from the information of the code string generated by the signal-transmission apparatus shown in FIG. 5, and outputs the reproduced signal.
As shown in FIG. 9, an input terminal 41 is supplied with a code string corresponding to the code string outputted from the terminal 16 shown in FIG. 5, and the supplied code string is inputted to a code-string decomposition circuit 42. The code-string decomposition circuit 42 extracts normalization-coefficient information, a spectral signal and quantization-precision information, and outputs them to a signal-component decoding circuit 43.
From the normalization-coefficient information, the spectral signal and the quantization-precision information, the signal-component decoding circuit 43 performs decoding to form a spectral signal corresponding to the spectral signal outputted from the spectral transformation circuit 12 shown in FIG. 5, and outputs the formed signal to a reverse-spectral-transformation circuit 44. The reverse-spectral-transformation circuit 44 generates an acoustic-waveform signal by performing a reverse-spectral-transformation process with a transformation length equal to that used by the spectral transformation circuit 12, and outputs the generated signal from an output terminal 45.
FIG. 10 shows a block diagram of a case in which the reverse MDCT is used as the reverse transformation method in the reverse-spectral-transformation circuit 44 shown in FIG. 9.
As shown in FIG. 10, the spectral signal supplied from the signal-component decoding circuit 43 via a terminal 51 is sent to a reverse-MDCT circuit 52, in which the reverse-MDCT expressed by Equation (3) is performed. A signal outputted form the reverse-MDCT circuit 52 is sent to a window-processing circuit 53, in which the window process expressed by Equation (4) is performed using a window coefficient supplied from an apparatus (not shown) via an input terminal 54. Thereby, when an overlapping process is performed by the subsequent overlapping circuit 55, data continues smoothly. A signal outputted from the window-processing circuit 53 is sent to the overlapping circuit 55, in which the overlapping process expressed by Equation (5) is performed. An acoustic-waveform signal outputted from the overlapping circuit 55, as the acoustic-waveform signal from the reverse-spectral-transformation circuit 44 shown in FIG. 9, is sent to the output terminal 45 via a terminal 56.
Incidentally, in order to reproduce only a signal having a narrow frequency band in the signal-reproduction apparatus 31, the signal-component decoding circuit 43 performs a decoding process for only signal blocks corresponding to a frequency band lower than a predetermined frequency, and does no t perform a decoding process for blocks corresponding to a higher frequency band. And, the reverse spectral transformation of the reproduced spectral signal is performed by the reverse-spectral-transformation circuit 44 with a transformation length equal to that used by the spectral transformation circuit 12.
In this case the size of the reverse-spectral-transformation circuit 44, occupying the whole signal-reproduction apparatus 31, is large similar to that of the signal-component decoding circuit 43. Accordingly, simply limiting the process of the signal-component decoding circuit 43 makes it impossible to form the signal-reproduction apparatus 31 which has an extremely small size.